1. Field of the Invention
The present invention relates to a multi-port memory where a plurality of serial ports are led from one semiconductor memory array and a digital interpolation apparatus for compensating distortion of, for example, image data by the use of the multi-port memory.
2. Description of the Prior Art
There is known semiconductor memory array which has a plurality of memory cells arranged in a matrix fashion. In this memory array there are word lines for selecting memory cells in row direction and bit lines for selecting memory cells in column direction. A row decoder generates a select signal for use in selecting word lines and a column decoder generates a select signal for use in selecting bit lines. For example, by decoding a high order bit of an address, a word select signal is generated. On the other hand, by decoding the low order bit of the address, a bit select signal is generated.
In this memory array, by connecting a plurality of input/output ports to the bit lines and by providing a column decoder for designating a bit line accessed on each port, a multi-port memory can be constructed.
In the multi-port memory, to independently designate rows and set the speed of output data, numbers of control circuits and column decoders which are equal to the number of the output ports are required and thereby the circuit scale is increased. In the case of the processing of audio signals or video signals, there are relatively few processes which need a plurality of data being independent. On the other hand, there are relatively many processes of calculating the data adjoined periodically or spatially. For example, in a digital filter, the inner product of a plurality of data which are periodically continuous is calculated. Thus, when audio signals or video signals are processed, a memory which can access adjacent data through a plurality of input or output ports is required.
On the other hand, since a picture photographed with a fisheye lens tends to have a distortion, image pick-up signals are converted into digital signals so as to compensate the distortion by the use of digital signal processing. Further, the unintentional movement of a hand in taking a picture with a video camera is also compensated by the use of digital signal processing. The compensation for the unitentional movement of a hand is a process which detects a motion vector generated by the hand movement and moves the picture frame by the amount of the motion vector. When the picture frame is moved, since there is a region which does not contain a picture, the picture should be enlarged in advance. Besides the compensation for the movement of a hand, the picture is occasionally enlarged by a special effect generator and so forth. In addition, sometimes the picture should be reduced. In the case where the distortion of a picture is compensated or in the case where a picture is enlarged or reduced, data which is interpolated from the original picture data is generated.
As described above, in the digital processing on a picture, the interpolation apparatus is used for a variety of applications. The interpolation apparatus multiplies a plurality of adjacent picture data by weighting coefficients and adds the result of the multiplication. Conventionally, in one cycle for accessing a memory which stores picture data by a circuit for performing interpolation calculations, only one data could be processed at a time, and the interpolation process could not be performed on a real time basis. In other words, if a plurality of pixel data could be sent to the interpolation circuit at a time in one cycle, the speed of the interpolation process could be increased.